package main

import (
	"github.com/gin-gonic/gin"
	"io"
	"log"
	"os"
	"partyus_app/config"
	"partyus_app/router"
)

func main() {
	f, err := os.Create("server.log")
	if err != nil {
		log.Fatalf("无法创建日志文件: %v", err)
	}
	defer f.Close()
	// 同时写入日志文件和终端
	gin.DefaultWriter = io.MultiWriter(f, os.Stdout)
	log.SetOutput(io.MultiWriter(f, os.Stdout)) // 设置标准日志的输出（log.Println 等）

	if err := os.MkdirAll("public", os.ModePerm); err != nil {
		return
	}
	// 初始化配置
	config.InitConfig()

	// 设置路由
	r := router.SetRouter()

	// 启动服务器，使用配置中的端口
	println(config.GlobalConfig.App.Port)
	if err := r.Run("0.0.0.0" + config.GlobalConfig.App.Port); err != nil {
		log.Fatalf("Failed to run server: %v", err)
	}
}
